import { get, post, remove, put } from '@/server/request'
import { baseApi, RequestCode } from '@/server/base'

export const TagGroup = {
  /**
   * 查询数据
   * @param params 
   * @returns 
   */
  list(params: { keyword: string, current: number, size: number }) {
    const { current, size, ..._params } = params;
    return get(`${baseApi}/labelGroup/list/${current}/${size}`, _params);
  },
  // /**
  //  * 查询数据
  //  * @param params 
  //  * @returns 
  //  */
  // listAll(params?: { name: string, current: number, size: number }) {
  //   return get(`${baseApi}/tag/listAll`, params);
  // },
  /**
   * 删除一条数据
   * @returns : Promise<RequestCode>
   */
  removeTagGroupById(params: { id: string | number }) {
    return remove(`${baseApi}/labelGroup/remove/${params.id}`, params);
  },
  // /**
  //  * 根据ID获取一条数据
  //  * @param params 
  //  * @returns 
  //  */
  // getTagDetailById(params: { id: string | number }) {
  //   return get(`${baseApi}/tag/get`, params);
  // },
  /**
   * 添加一条数据
   * @param params 
   */
  addTagGroupInfo(params: TagGroupInfo) {
    return post(`${baseApi}/labelGroup/save`, params);
  },
  /**
   * 修改一条数据
   * @param params 
   * @returns 
   */
  modifyTagGroupInfo(params: TagGroupInfo) {
    return put(`${baseApi}/labelGroup/update/${params.id}`, params);
  }

}


export const Tag = {
  /**
   * 查询数据
   * @param params 
   * @returns 
   */
  list(params: { keyword: string, current: number, size: number }) {
    const { current, size, ..._params } = params;
    return get(`${baseApi}/label/list/${current}/${size}`, _params);
  },
  /**
   *查询标签，根据标签组编号
   * @param params 
   * @returns 
   */
  listByLabelGroup(params: { id: string | number }) {
    return get(`${baseApi}/label/getLabelByGroup/${params.id}`);
  },
  s
  // /**
  //  * 查询数据
  //  * @param params 
  //  * @returns 
  //  */
  // listAll(params?: { name: string, current: number, size: number }) {
  //   return get(`${baseApi}/tag/listAll`, params);
  // },
  /**
   * 删除一条数据
   * @returns : Promise<RequestCode>
   */
  removeTagById( id: string | number ) {

    return remove(`${baseApi}/label/removeById/${id}`);
  },
  // /**
  //  * 根据ID获取一条数据
  //  * @param params 
  //  * @returns 
  //  */
  // getTagDetailById(params: { id: string | number }) {
  //   return get(`${baseApi}/tag/get`, params);
  // },

  /**
   * 添加一条数据
   * @param params 
   */

  appendInfo(params: TagInfo) {
    return post(`${baseApi}/label/save`, params);
  },
  // /**
  //  * 修改一条数据
  //  * @param params 
  //  * @returns 
  //  */
  modifyInfo(params: TagGroupInfo) {
    return put(`${baseApi}/label/update`, params);
  }

}


export type TagGroupInfo = {
  id?: string | number,
  name: string,
  info: string,
  createTime?: string,
  updateTime?: string,
}



export type TagInfo = {
  id?: string | number,
  colour: string,
  labelGroupId?: string | number,
  name: string,
  createTime?: string,
  updateTime?: string,

}